
package com.insigma.business.qrcode.soldier._consumer.impl;


import com.insigma.business.qrcode.common.template.BasePagingResponse;
import com.insigma.business.qrcode.common.vo.BaseDeleteRequest;
import com.insigma.business.qrcode.common.vo.BaseResponse;
import com.insigma.business.qrcode.soldier.dto.PlacementInfoDTO;
import com.insigma.business.qrcode.soldier.dto.PlacementStatsInfoDTO;
import com.insigma.business.qrcode.soldier.dto.SimpleApiRequest;
import com.insigma.business.qrcode.soldier.request.BaseGetRequest;
import com.insigma.business.qrcode.soldier.request.PlacementInfoInsertRequest;
import com.insigma.business.qrcode.soldier.request.PlacementInfoSearchRequest;
import com.insigma.business.qrcode.soldier.request.PlacementInfoUpdateRequest;
import com.insigma.business.qrcode.soldier._consumer.PlacementInfoConsumer;
import com.insigma.business.qrcode.soldier._provider.PlacementInfoProvider;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;


@Service("placementInfoConsumer")
public class PlacementInfoConsumerImpl implements PlacementInfoConsumer {

    @Resource
    private PlacementInfoProvider placementInfoProvider;

    @Override
    public BaseResponse<PlacementStatsInfoDTO> statPlacement(SimpleApiRequest request) {
        return placementInfoProvider.statPlacement(request);
    }

    
    @Override
    public BasePagingResponse<List<PlacementInfoDTO>> searchPlacementInfo(final PlacementInfoSearchRequest searchRequest) {
        return placementInfoProvider.searchPlacementInfo(searchRequest);
    }

   
    @Override
    public BaseResponse<PlacementInfoDTO> getPlacementInfo(final BaseGetRequest baseGetRequest) {
        return placementInfoProvider.getPlacementInfo(baseGetRequest);
    }

    
    @Override
    public BaseResponse<String> insertPlacementInfo(final PlacementInfoInsertRequest insertRequest) {
        return placementInfoProvider.insertPlacementInfo(insertRequest);
    }

    
    @Override
    public BaseResponse<Integer> updatePlacementInfo(final PlacementInfoUpdateRequest updateRequest) {
        return placementInfoProvider.updatePlacementInfo(updateRequest);
    }

    @Override
    public BaseResponse<Integer> publishPlacement(PlacementInfoUpdateRequest request) {
        return placementInfoProvider.publishPlacement(request);
    }

    @Override
    public BaseResponse<Integer> calculateBatchMatchResult(String batchId) {
        return  placementInfoProvider.calculateBatchMatchResult(batchId);
    }

    
    @Override
    public BaseResponse<Integer> deletePlacementInfo(final BaseDeleteRequest deleteRequest) {
        return placementInfoProvider.deletePlacementInfo(deleteRequest);
    }

    @Override
    public BaseResponse<Integer> updateCanApply(PlacementInfoUpdateRequest updateRequest) {
        return placementInfoProvider.updateCanApply(updateRequest);
    }

}
